package com.ruoyi.blog.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 评论管理对象 blog_comment
 *
 * @author 刘哲贤
 * @date 2022-08-30
 */
public class BlogComment implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    private Long id;

    /**
     * 评论发送用户id
     */
    @Excel(name = "评论发送用户id")
    private Long sendUserId;

    /**
     * 评论发送用户名称
     */
    @Excel(name = "评论发送用户名称")
    private String sendUserName;

    /**
     * 评论接收用户id
     */
    @Excel(name = "评论接收用户id")
    private Long receiveUserId;

    /**
     * 评论接收用户名称
     */
    @Excel(name = "评论接收用户名称")
    private String receiveUserName;

    /**
     * 评论内容
     */
    @Excel(name = "评论内容")
    private String content;

    /**
     * 父级id
     */
    @Excel(name = "父级id")
    private Long pid;

    /**
     * 文章id
     */
    @Excel(name = "文章id")
    private Long articleId;

    /**
     *
     */
    @Excel(name = "")
    private Long status;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 回复列表
     */
    private List<BlogComment> replyList;

    public List<BlogComment> getReplyList() {
        return replyList;
    }

    public void setReplyList(List<BlogComment> replyList) {
        this.replyList = replyList;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setSendUserId(Long sendUserId) {
        this.sendUserId = sendUserId;
    }

    public Long getSendUserId() {
        return sendUserId;
    }

    public void setSendUserName(String sendUserName) {
        this.sendUserName = sendUserName;
    }

    public String getSendUserName() {
        return sendUserName;
    }

    public void setReceiveUserId(Long receiveUserId) {
        this.receiveUserId = receiveUserId;
    }

    public Long getReceiveUserId() {
        return receiveUserId;
    }

    public void setReceiveUserName(String receiveUserName) {
        this.receiveUserName = receiveUserName;
    }

    public String getReceiveUserName() {
        return receiveUserName;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getContent() {
        return content;
    }

    public void setPid(Long pid) {
        this.pid = pid;
    }

    public Long getPid() {
        return pid;
    }

    public void setArticleId(Long articleId) {
        this.articleId = articleId;
    }

    public Long getArticleId() {
        return articleId;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public Long getStatus() {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("sendUserId", getSendUserId())
                .append("sendUserName", getSendUserName())
                .append("receiveUserId", getReceiveUserId())
                .append("receiveUserName", getReceiveUserName())
                .append("content", getContent())
                .append("pid", getPid())
                .append("articleId", getArticleId())
                .append("status", getStatus())
                .append("createTime", getCreateTime())
                .append("replyList",getReplyList())
                .append("createTime",getCreateTime())
                .toString();
    }
}
